home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / POVHELP.ZIP / source / help.h next >
Encoding:
C/C++ Source or Header  |  1994-07-19  |  4.8 KB  |  146 lines

  1.  
  2.  
  3. /****************************************************************************
  4. *                   HELP.H - Version 1.0 - 1 July 1994
  5. *
  6. *  This module forms part of the POV help generation system.
  7. *
  8. *  from Persistence of Vision Raytracer
  9. *  Copyright 1994 Persistence of Vision Team
  10. *  Copyright 1994 Christopher J. Cason.
  11. *---------------------------------------------------------------------------
  12. *  NOTICE: This source code file is provided so that users may experiment
  13. *  with enhancements to POV-Ray and to port the software to platforms other
  14. *  than those supported by the POV-Ray Team.  There are strict rules under
  15. *  which you are permitted to use this file.  The rules are in the file
  16. *  named POVLEGAL.DOC which should be distributed with this file. If
  17. *  POVLEGAL.DOC is not available or for more info please contact the POV-Ray
  18. *  Team Coordinator by leaving a message in CompuServe's Graphics Developer's
  19. *  Forum.  The latest version of POV-Ray may be found there as well.
  20. *
  21. *  POV-Ray files may also be obtained from ftp.uwa.edu.au in pub/povray.
  22. *
  23. *  This program was written in its entirety by Christopher J. Cason.
  24. *  Its use is freely and permanently granted to the POV-Team and POV users
  25. *  under the conditions specified in POVLEGAL.DOC.
  26. *
  27. *  Author : C. J. Cason (cjcason@yarrow.wt.uwa.edu.au, CIS 100032,1644)
  28. *
  29. *****************************************************************************/
  30.  
  31. #define VERSION         100
  32.  
  33. #define RIGHT_SHIFT     0x01
  34. #define SHIFT           0x02
  35. #define CONTROL         0x04
  36. #define ALT             0x08
  37.  
  38. #define HIGHLIGHT_ON    0xb0
  39. #define HIGHLIGHT_OFF   0xb1
  40. #define BOLD_ON         0xb2
  41. #define BOLD_OFF        0xb3
  42. #define CODE_ON         0xb4
  43. #define CODE_OFF        0xb5
  44. #define HEADING_ON      0xb6
  45. #define HEADING_OFF     0xb7
  46. #define LINE_ON         0xb8
  47. #define LINE_OFF        0xb9
  48. #define PRESERVE_ON     0xba
  49. #define PRESERVE_OFF    0xbb
  50. #define TABLE_ON        0xbc
  51. #define TABLE_OFF       0xbd
  52. #define REFERENCE_ON    0xbe
  53. #define REFERENCE_OFF   0xbf
  54. #define LIST_ON         0xc0
  55. #define LIST_OFF        0xc1
  56. #define LIST_ENTRY_ON   0xc2
  57. #define LIST_ENTRY_OFF  0xc3
  58. #define ITALIC_ON       0xc4
  59. #define ITALIC_OFF      0xc5
  60. #define UNDERSCORE_ON   0xc6
  61. #define UNDERSCORE_OFF  0xc7
  62.  
  63. #define PARAGRAPH       0xf0
  64. #define INDENT          0xf1
  65. #define REFERENCE       0xf2
  66. #define TARGET          0xf3
  67. #define ESCAPE          0xfe
  68.  
  69. #define CODE_FRAGMENT   0x01
  70. #define HEADING         0x02
  71. #define LINE_DRAWING    0x04
  72. #define LIST_ENTRY      0x08
  73. #define BOLD            0x10
  74. #define HIGHLIGHT       0x20
  75. #define REF             0x40
  76.  
  77. typedef struct
  78. {
  79.   char                  signature [8] ;
  80.   unsigned short        reader_version ;
  81.   unsigned short        database_version ;
  82.   char                  sec_number_len ;
  83.   char                  sec_title_len ;
  84.   unsigned long         flags ;
  85.   unsigned short        author_count ;
  86.   unsigned short        section_count ;
  87.   unsigned short        appendix_count ;
  88.   unsigned short        reference_count ;
  89.   unsigned long         title ;
  90.   unsigned long         title_length ;
  91.   unsigned long         copyright ;
  92.   unsigned long         copyright_length ;
  93.   unsigned long         authors ;
  94.   unsigned long         author_length ;
  95.   unsigned long         table_of_contents ;
  96.   unsigned long         table_of_contents_length ;
  97.   unsigned long         reference_index ;
  98.   unsigned long         reference_index_length ;
  99.   unsigned long         reference_string_length ;
  100.   unsigned long         references ;
  101.   unsigned long         reference_length ;
  102. } help_file_header ;
  103.  
  104. typedef struct _text_struct
  105. {
  106.   struct _text_struct   *next ;
  107.   unsigned long         text ;
  108. } text_struct ;
  109.  
  110. typedef struct _TOC_struct
  111. {
  112.   struct _TOC_struct    *next ;
  113.   char                  section_number [16] ;
  114.   char                  title [81] ;
  115.   char                  is_appendix ;
  116.   long                  offset ;
  117.   unsigned long         section ;
  118.   unsigned long         section_length ;
  119. } TOC_struct ;
  120.  
  121. typedef struct
  122. {
  123.   unsigned long         section ;
  124.   unsigned long         section_length ;
  125.   char                  is_appendix ;
  126.   char                  spare ;
  127. } TOC_entry ;
  128.  
  129. typedef struct _reference_struct
  130. {
  131.   struct _reference_struct        *next ;
  132.   struct _reference_struct        *child ;
  133.   char                            *subject ;
  134.   char                            priority ;
  135.   unsigned                        targets ;
  136.   unsigned                        child_count ;
  137.   unsigned                        refno ;
  138.   unsigned long                   location ;
  139. } reference_struct ;
  140.  
  141. typedef struct _reference_request
  142. {
  143.   struct _reference_request       *next ;
  144.   char                            *subject ;
  145.   unsigned long                   location ;
  146. } reference_request ;